// ============================== 导入依赖 ============================== //

import CORE from '@/CORE'
import state from '@admin/views/Secure/detail/DetailBroadcast/store/state'
import ListClass from '@api/broadcast/model/QueryTerminalListReq'
import API from './API'

// ============================== 导出状态集 ============================== //

export default {
  // —————————————————————————————— 常量状态 —————————————————————————————— //

  /**
   * 接口
   */
  API,

  /**
   * 映射
   */
  MAP: {
    WORD: state.MAP.WORD, // 词语
    EDIT: '设置', // 修改
    tipEdit: '设置音量', // 修改提示

    /**
     * 音量标记
     */
    MARKS: {
      0: '0',
      20: '20',
      40: '40',
      60: '60',
      80: '80',
      100: '100',
    },
  },

  /**
   * 字典
   */
  DICT: state.DICT,

  /**
   * 初始配置
   */
  INIT_CONFIG: {
    /**
     * 提交后刷新的延迟毫秒数
     */
    SUBMIT_REFRESH_DELAY: 2000,
  },

  /**
   * 初始参数
   *
   * 1. 初始存在，才能响应
   * 2. CORE.mixStore(store) 时使用
   * 3. setParam() 重置时使用
   * 3. WebSearch 高级查询点重置时使用
   */
  INIT_PARAM: CORE.initObj(ListClass, {
    statusList: state.DICT.STATUS.map(([id]) => id), // 状态列表
  }),

  /**
   * 初始单项
   *
   * 1. 初始存在，才能响应
   * 2. setOne() 合并时使用
   * 3. openAdd() 新增时使用
   */
  INIT_ONE: {
    ...state.INIT_ONE,

    idList: [], // 音量设置的设备 ID 列表
  },
}
